﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Yappi;
using Yappi.Common;

namespace Yappi.Samples.Concepts
{
    public static class WrappedConstructor<TConcept, TDelegate>
        where TConcept : Concept
        where TDelegate : class
    {
        //compiling constructor calling delegate
        public static readonly Singleton<TDelegate> New =
            new Singleton<TDelegate>(() => Constructor.Compile<TDelegate>(WrappedConcept<TConcept>.Type));
    }
}